编写完脚本后,通常会在本地进行运行验证,那么该如何运行呢?

下面将介绍几种常用的运行方式,供大家选择参考。

1 REPL 环境

REPL 的全称是 Read-Eval-Print Loop,它是一种编程语言交互式解释器的实现方式。

Node.js REPL 可以让用户在命令行中输入代码片段并立即获得结果,可以快速测试 JavaScript 代码片段,进行一些简单的算术操作、字符串处理、函数调用等等。

在终端里我们输入 node 即可进入,

可以在里面直接输入表达式并执行 (Enter 回车执行)。

默认是单行输入,当然也可以输入 .editor,进行多行编辑

使用 Ctrl+D 结束输入 Ctrl+C 取消。

下面是使用演示。

2 命令行执行

我们可以直接通过 node 命令来执行我们的脚本,这个也是最常用的方式,

用于测试的 hello.js 代码如下。

js const hello = 'hello' console.log(hello)

① 直接指定脚本运行

sh node hello.js

② 通过 eval 参数直接运行

sh node -e 'const a = "hello";console.log(a)'

③ 通过管道运算法执行

适用于部分 CI 环境中,直接拉 JS 脚本执行。

```sh cat hello.js | node

echo "console.log('hello')" | node

当然谨慎执行不明源码的脚本

curl https://script.sugarat.top/js/tests/test.js | node ```

3 直接执行

Hashbang (也称为 shebang) 是一种特殊的注释,以 #! 开头,通常出现在可执行的脚本文件的第一行,用于告诉系统要使用哪个解释器来执行该脚本文件。

给文件 (hello.js) 开头加入 Hashbang,即如下代码 (#!/usr/bin/env node),

PS:当该文件被执行时,系统将使用 node 解释器来执行该文件。这使得我们可以将 JavaScript 文件作为可执行的脚本文件来使用,而不必显式地调用解释器

```js

!/usr/bin/env node

const hello = 'hello world' console.log(hello) ```

然后赋予文件可执行权限,

sh chmod u+x ./hello.js

紧接着直接执行即可。

sh ./hello.js

下面是操作示例。

4 通过 VS Code 操作

上面都是在终端 (命令行) 里执行代码,在 VS Code 里我们也可以通过快捷键执行,

① Code Runner

前面我们安装了 Code Runner 插件。

编辑文件的右上角右键菜单 中都有执行入口

② VS Code 内置运行终端

目标文件中按 F5 或者在左侧菜单中找到 运行和调试 进行点击,

在弹出的选项中选择 Node.js 即可运行,

可以在调试控制台中看到执行结果。

小结

本文介绍了几种常用的运行方式 (REPLnode 指令直接运行Vs Code快捷调用)。

同时还顺带介绍了 REPLHashbang 等概念:

读者可以根据自己的使用场景,灵活使用各种方式。